package org.dromara.device.service;

import org.dromara.device.domain.DeviceStoreArea;
import org.dromara.device.domain.vo.DeviceStoreAreaVo;
import org.dromara.device.domain.bo.DeviceStoreAreaBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;

import java.util.Collection;
import java.util.List;

/**
 * 设备管理-设备与门店分区关联Service接口
 *
 * @author samuel
 * @date 2024-03-21
 */
public interface IDeviceStoreAreaService {

    /**
     * 查询设备管理-设备与门店分区关联
     */
    DeviceStoreAreaVo queryById(Long deviceId);

    /**
     * 查询设备管理-设备与门店分区关联列表
     */
    TableDataInfo<DeviceStoreAreaVo> queryPageList(DeviceStoreAreaBo bo, PageQuery pageQuery);

    /**
     * 查询设备管理-设备与门店分区关联列表
     */
    List<DeviceStoreAreaVo> queryList(DeviceStoreAreaBo bo);

    /**
     * 新增设备管理-设备与门店分区关联
     */
    Boolean insertByBo(DeviceStoreAreaBo bo);

    /**
     * 修改设备管理-设备与门店分区关联
     */
    Boolean updateByBo(DeviceStoreAreaBo bo);

    /**
     * 校验并批量删除设备管理-设备与门店分区关联信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}
